{{tag>serveur hardy sécurité apache}}

====== Re-configuration de Suexec ======

Comment redéfinir "rapidement" la configuration "AP_DOC_ROOT=/var/www" de suexec.\\
Pour ceux qui ont leurs site dans un autre dossier que celui par défaut /var/www (ex: ///home/**<user>**/www//)\\
Et qui ont certaines erreurs de ce genre dans leurs logs:\\
  * ''suexec policy violation: see suexec log for more details''
  * ''command not in docroot (/home/user/cgi-bin/php-cgi)''
Testé sur Ubuntu [[Hardy]] LTS en mode serveur.\\

  /usr/lib/apache2/suexec -V
   -D AP_DOC_ROOT="/home"
   -D AP_GID_MIN=100
   -D AP_HTTPD_USER="www-data"
   -D AP_LOG_EXEC="/var/log/apache2/suexec.log"
   -D AP_SAFE_PATH="/usr/local/bin:/usr/bin:/bin"
   -D AP_UID_MIN=100
   -D AP_USERDIR_SUFFIX="www"

===== Compilation =====

==== Pré-requis ====

[[:tutoriel:comment_installer_un_paquet|Installez les paquets suivants]].

  apt-get install fakeroot build-essential devscripts
  apt-get source apache2
  apt-get build-dep apache2

==== Modification ====

  * Changement de répertoire:

  cd /usr/src/apache2-2.2.8

  * Édition du fichier debian/rules

  nano debian/rules

  * Trouvez (avec Ctrl+W)

 ''--with-suexec-docroot=/var/www''

  * Remplacer par ce que vous voulez, ex:

 ''--with-suexec-docroot=/home''

==== Changement de la version d'apache ====

 Pour éviter d'avoir la version d'origine de ubuntu a chaque ''apt-get update && apt-get upgrade''

  dch -U -i 

 Modifier comme suis, puis enregistrez \\
 Faite bien attention de garder la première partie de la version (ici "2.2.8-1ubuntu0.3")

  apache2 (2.2.8-1ubuntu0.3perso1) hardy; urgency=low
  
    * suexec docroot: /home
  
   -- root <root@email.domain>  Fri, 23 Jan 2009 19:09:09 +0100
  
  apache2 (2.2.8-1ubuntu0.3) hardy-proposed; urgency=low
  
    * debian/config-dir/mods-available/disk_cache.conf:
      Don't enable caching of the root URL by default when disk_cache is
      enabled. (LP: #219914).
  

==== Compilation ====

 Pour compiler le tout, une simple commande:

  dpkg-buildpackage

 Arriver là vous pouvez aller vous faire un café, sa va prendre un certain temps.

===== Installation =====

Dans le répertoire parent, vous trouverez tous les .deb

  cd /usr/src/

Pour l'installer avec le mpm worker:
 
<code>  dpkg -i apache2-mpm-worker_*.deb  apache2_*.deb apache2.*.deb apache2-utils_*.deb</code>

Enjoy, Alex10336,